<?php
/**
* E i n s t e l l u n g e n
*
*/

function einstellungenAnzeigen() {
	$token = md5(uniqid(rand(), true));
	$_SESSION['token'] = $token;
	if (file_exists(newsOrdner."news_config.php")) include newsOrdner."news_config.php";
	// Variablen setzten
	if ($editor == "LFBB") {
		$ifEdLFBB = "checked='checked'";
		$ifEdWYSIWYG = "";
	} else {
		$ifEdLFBB = "";
		$ifEdWYSIWYG = "checked='checked'";
	}
	checkedSetzen($codepressBenutzen,$ifCpT,$ifCpF);
	checkedSetzen($emailBenachrichtigung,$ifEbT,$ifEbF);
	checkedSetzen($spamProtection,$SST,$SSF);
	// fürs Template
	$tmp = new Template(templateUrl.'admin_einstellungen.tpl');
	$tmp->setContent(array ('url'           => $url,							
							'CpT'           => $ifCpT,
							'CpF'           => $ifCpF,
							'EbT'           => $ifEbT,
							'EbF'           => $ifEbF,
							'SST'           => $SST,
							'SSF'           => $SSF,
							'language'      => sprachenAuslesen(),
							'NewsPerPage'   => $newsProSeite,
							'NewsOnHoPage'  => $newsAufStartseite,
							'smiliePack'    => smiliePacksLesen(),
							'smilieList(F)' => smilieList(false),
							'EdLFBB'        => $ifEdLFBB,
							'EdWYSIWYG'     => $ifEdWYSIWYG,
							'token'         => $token));
	echo $tmp->vorlage;
}


function einstellungenAendern() {
	global $config;
	if (isset($_POST['EinstellungenAendern'])) {
		if( empty($_POST['token']) || $_POST['token'] != $_SESSION['token'] ) die;
		include $config;
		$smiliePack            = htmlentities($_POST['smiliePack']);
		$url                   = htmlentities($_POST['url']);
		$alteSprache           = $sprache;
		$sprache               = htmlentities($_POST['sprache']);
		$editor                = htmlentities($_POST['editor']);
		$newsProSeite          = htmlentities($_POST['newsProSeite']);
		$newsAufStartseite     = htmlentities($_POST['newsAufStartseite']);		
		$codepressBenutzen     = htmlentities($_POST['codepressBenutzen']);
		$emailBenachrichtigung = htmlentities($_POST['emailBenachrichtigung']);
		$spamProtection        = htmlentities($_POST['spamProtection']);
		einstellungenValidieren($smiliePack,$url,$sprache,$editor,$newsProSeite,$newsAufStartseite,$codepressBenutzen,$emailBenachrichtigung,$spamProtection);
		configDateiSpeichern($smiliePack,$url,$sprache,$editor,$newsProSeite,$newsAufStartseite,$codepressBenutzen,$emailBenachrichtigung,$spamProtection);
		unset($_SESSION['token']);
		if ($alteSprache != $sprache) header("Location: index.php?admin=einstellungen&meldung=27");
	}
}

/**
* Helfer
*
*/

function einstellungenValidieren($smiliePack,$url,$sprache,$editor,$newsProSeite,$newsAufStartseite,$codepressBenutzen,$emailBenachrichtigung,$spamProtection) {
	while (!isset($link)) {
		$link = "OK";
		if (!checkBool($spamProtection))                              $link = "14";
		if (!checkIstWertInArray($smiliePack,smiliePacksLesen("li"))) $link = "15";
		if (!checkBool($codepressBenutzen))                           $link = "14";
		if (!checkNum($newsAufStartseite,"max",99))                   $link = "13";
		if (!checkNum($newsProSeite,"max",99))                        $link = "13";
		if (!checkIstWertInArray($sprache,sprachenAuslesen("li")))    $link = "12";
		if (!checkEditor($editor))                                    $link = "11";
		if (!checkString($url,"max",100))                             $link = "10";
		if (!checkUrl($url))                                          $link = "10";
		if (!checkBool($emailBenachrichtigung))                       $link = "14";
	}
	if ($link != "OK") {
		header("Location: index.php?admin=einstellungen&meldung=$link");
		die (ADMIN_BACKEND_ERROR);
	} else 	return true;
}


function checkedSetzen($var,& $trueVar,& $falseVar) {
	if ($var == 0){
		$trueVar = "checked='checked'";
		$falseVar = "";
	} else {
		$trueVar = "";
		$falseVar = "checked='checked'";
	}
}

?>
